﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SCIE_DTL;
using System.Data;

namespace SCIE_DAL
{
    /// <summary>
    /// Criada em:
    /// Por:
    /// Descrição:
    /// </summary>
    public class ProjetorDAO : EquipamentoDAO<ProjetorDTO>
    {
        internal override System.Data.IDbCommand CriarComandoInsercao(SCIE_DTL.ITransferenciaDados dto)
        {
            throw new NotImplementedException();
        }

        internal override string ObterNomeTabela()
        {
            return "EQUIPAMENTO E, PROJETOR P";
        }

        internal override void PopularDto(IDataReader reader, ProjetorDTO projetor)
        {
            projetor.Etiqueta = (string) reader["ETIQUETA"];
            projetor.DataEntrada = (string)reader["DATA_ENTRADA"];
            projetor.DataBaixa = (string)reader["DATA_BAIXA"];
            projetor.Sala = (string)reader["SALA"];
            projetor.Status = (string)reader["STATUS"];
            projetor.Marca = (string)reader["MARCA"];
            projetor.Modelo = (string)reader["MODELO"];
            projetor.Resolucao = (string)reader["RESOLUCAO"];
            projetor.Tamanho_tela = (string)reader["TAMANHO_TELA"];
        }

        internal override System.Data.IDbCommand CriarComandoAtualizacao(string etiqueta, ProjetorDTO newDto)
        {
            throw new NotImplementedException();
        }

        internal override System.Data.IDbCommand CriarComandoRemocao(string etiqueta)
        {
            throw new NotImplementedException();
        }

        internal override System.Data.IDbCommand CriarComandoRemocao(ProjetorDTO dto)
        {
            throw new NotImplementedException();
        }

        internal override IDbCommand CriarComandoBuscaEquipamentoPorEtiqueta(string etiqueta)
        {
            IDbCommand comando = factory.CreateCommand("SELECT * FROM " + ObterNomeTabela() + " WHERE E.ETIQUETA = '" +etiqueta +"' AND E.ETIQUETA = P.ETIQUETA");
            return comando;
        }
    }
}
